package com.glela.common.service;

import org.apache.commons.lang3.tuple.Pair;

import com.zls.mail.FileMail;
import com.zls.mail.HtmlMail;
import com.zls.mail.TextMail;

public interface EmailService {
	/**
	 * <dl>
	 * <dt>文本邮件</dt>
	 * </dl>
	 * @param mail void
	 * @author zls
	 * @date 2018年3月13日 下午3:07:49
	 */
	boolean send(TextMail mail);

	boolean send(TextMail mail, String freemarkerTemplatePath, Pair<?, ?>... pairs);

	/**
	 * <dl>
	 * <dt>html邮件</dt>
	 * </dl>
	 * @param mail void
	 * @author zls
	 * @date 2018年3月13日 下午3:10:10
	 */
	boolean send(HtmlMail mail);

	boolean send(HtmlMail mail, String freemarkerTemplatePath, Pair<?, ?>... pairs);

	/**
	 * <dl>
	 * <dt>file附件邮件</dt>
	 * </dl>
	 * @param mail void
	 * @author zls
	 * @date 2018年4月27日 下午3:17:19
	 */
	boolean send(FileMail mail);

	boolean send(FileMail mail, String freemarkerTemplatePath, Pair<?, ?>... pairs);
}
